PowerTools ActiveReports for .NET 11.0J > ActiveReportsユーザーガイド > サンプルとチュートリアル > チュートリアル > ページレポート/RDLレポートのチュートリアル > データ > パラメータ付きのクエリの使用 |
実行時にクエリの構成を変更するために、動的なクエリを使用することができます。このチュートリアルでは動的なクエリの作成方法を紹介します。
このチュートリアルでは、以下のタスクを行います。
メモ:
|
チュートリアルを完了すると、次のようなレポートが作成されます。
Visual StudioプロジェクトにActiveReportを追加する
プロジェクトの追加については、「プロジェクトにレポートを追加する」を参照してくだざい。
レポートをデータソースに接続する
データセットを追加する
SQLクエリ |
コードのコピー
|
---|---|
SELECT Movie.Title, Product.InStock, Product.StorePrice FROM MediaType INNER JOIN (Movie INNER JOIN (Product INNER JOIN MovieProduct ON Product.ProductID = MovieProduct.ProductID) ON Movie.MovieID = MovieProduct.MovieID) ON MediaType.MediaID = MovieProduct.MediaType WHERE (((MediaType.MediaID)=1)) ORDER BY Movie.Title |
レポートのレイアウトを作成する
プロパティ名 | プロパティの値 |
---|---|
Location | 0in, 0.5in |
Size | 5.5in, 0.75in |
FixedSize | 6.5in, 7in |
データフィールド | 列名 |
---|---|
Title | TableColumn1 |
InStock | TableColumn2 |
StorePrice | TableColumn3 |
メモ: 詳細行に式が自動的に追加されると同時に、ヘッダ行に静的なラベルが表示されます。 |
プロパティ名 | プロパティの値 |
---|---|
FontWeight | Bold |
BackgroundColor | DarkSeaGreen |
RepeatOnNewPage | True |
詳細行の[StorePrice]フィールドを選択して、[プロパティ]ウィンドウからFormatプロパティを「Currency」に設定します。
列 | Width |
---|---|
1列 | 4.5in |
2列 | 1in |
3列 | 1in |
パラメータリストにより使用される2番目のデータセットを作成する
SQLクエリ |
コードのコピー
|
---|---|
SELECT 0 AS MediaID, "All" AS Description
FROM MediaType
UNION SELECT MediaID, Description
FROM MediaType
ORDER BY Description
|
レポートにパラメータを追加する
[全般]タブ:
[使用できる値]タブでは[クエリから値を取得]を選択します。
動的なクエリを使用するためにProductsデータセットを変更する
クエリ |
コードのコピー
|
---|---|
="SELECT Movie.Title, Product.InStock, Product.StorePrice, MediaType.Description FROM MediaType INNER JOIN (Movie INNER JOIN (Product INNER JOIN MovieProduct ON Product.ProductID = MovieProduct.ProductID) ON Movie.MovieID = MovieProduct.MovieID) ON MediaType.MediaID = MovieProduct.MediaType" & IIf(Parameters!MediaType.Value = 0, ""," WHERE (MediaType = " & Parameters!MediaType.Value & ")") & " ORDER BY Movie.Title" |
選択したパラメータのラベルを表示するためにヘッダを追加する
プロパティ名 | プロパティの値 |
---|---|
TextAlign | Center |
FontSize | 14pt |
Location | 0in, 0in |
Size | 6.5in, 0.25in |
Value | =Parameters!MediaType.Label & " 映画の在庫" |
メモ: 式の中で[Value]の代わりに[Label]を使用することにより、パラメータ値の[MediaID]より分かりやすい[Description]フィールドを表示します。 |
レポートを表示する
または